\section{Initial Problem}
\label{prestudy:identifyproblemandscenario}
%Her skal være en undersøgelse af "problemet", altså video streaming med broadcast.
\newcommand{\initialproblem}[0]{\textit{How should a video be streamed from one source, to multiple sinks with heterogeneous channel conditions via WLAN? }}
The initial problem for this project is illustrated in Figure \ref{fig:introductory:initial} and is formally stated as follows:

\begin{itemize}
\item{\initialproblem}
\end{itemize}

There are several ways to distribute a video stream over \ac{WLAN}, however the reliability and efficiency of each method differs. Network topology is discussed in Section \ref{prestudy:identifyproblemandscenario:network}.

The initial problem can be divided into three layers of coding, as illustrated in Figure \ref{fig:layeredcoding}, namely source coding, network coding and channel coding. Source coding refers to how the video content is presented and is studied further in Section \ref{prestudy:identifyproblemandscenario:video}. Section \ref{prestudy:identifyproblemandscenario:video} focuses on the consequences of errors and how a video can be optimised for streaming via \ac{WLAN}. Channel coding refers to error correction codes applied on the individual transmission packets and is briefly discussed in Section \ref{prestudy:errororrectingcodes}. \ac{NC} is a coding technique used to minimise errors and maximise throughput for specific network topologies. This layer of coding is introduced in Section \ref{prestudy:errororrectingcodes:networkcoding}, with focus on optimising broadcast transmission of data. 

%The \ac{NC} layer is introduced in Section \ref{prestudy:errororrectingcodes:networkcoding} and seeks to improve transmission of entire source blocks of data.

% Scenario figure
\begin{figure}[ht!]
\centering
	\begin{tikzpicture}[->,>=stealth',shorten >=1pt,auto,node distance=2.5cm,
		            semithick]
	\tikzstyle{every state}=[fill=white,text=black]

		\node[state]	(S)  at (0,0)		{$S$};
		\node[state]	(N1) at (0,2)		{$n_1$};
		\node[state] 	(N2) at (3,1.5)		{$n_2$};
		\node[state] 	(N3) at (5,0)		{$n_3$};
		\node[state]  	(N4) at (3,-1.5)	{$n_4$};
		\node[state]  	(N5) at (0,-2)		{$n_5$};
		\node[state]  	(N6) at (-3,-1.5)	{$n_6$};
		\node[state]  	(N7) at (-5,0)		{$n_7$};
		\node[state]  	(N8) at (-3,1.5)	{$n_8$};

		\path	(S) edge  node {$p_1$}	(N1)
			(S) edge  node {$p_2$}	(N2)
			(S) edge  node {$p_3$}	(N3)
			(S) edge  node {$p_4$}	(N4)
			(S) edge  node {$p_5$}	(N5)
			(S) edge  node {$p_6$}	(N6)
			(S) edge  node {$p_7$}	(N7)
			(S) edge  node {$p_8$}	(N8);
		
	\end{tikzpicture}
\caption{Broadcast scenario: The source, $S$, wants to stream the same video data to all nodes, $n_1,..,n_n$ with varying probability of successful transmission $p_1,...,p_n$ respectively.}
\label{fig:introductory:initial}
\end{figure}

% Source coding/...NC.../Channel coding Layer figure
\begin{figure}[ht!]
\centering
	\begin{tikzpicture}[>=stealth',shorten >=1pt,auto, semithick]
		            
	\tikzstyle{every state}=[rectangle, fill=white,text=black,,minimum height=0.7cm, minimum width=7cm, node distance=1cm]

		\node[state] (BASE) {Source Coding (Video Codec)};
		\node[state, below of=BASE] (E1) {Network Coding (NC)};
		\node[state, below of=E1,dashed] (E2) {Channel Coding (FEC)};

	\end{tikzpicture}
\caption{Introducing a \ac{NC} layer between source and channel coding. Channel coding (dashed box) will be briefly discussed but otherwise not dealt with since applying on standardised \ac{WLAN}.}
\label{fig:layeredcoding}
\end{figure}

\newpage
\input{prestudy/network.tex}
\input{prestudy/video.tex}
